Digitized release notes

ABSTRACT

Aspects of the present invention include a digitized release notes configured to be automatically consumed by a management system or database and can be intelligently leveraged by the management systems for numerous purposes. In embodiments, having a repository of release notes contents, a management system can support various levels of queries for making or proposing solutions for an administrator while also providing a general overview of the release contents in a user consumable format. One advantage to such implementations is the time saved by administrators in gathering all the required information for each piece of the equipment under management. All the release notes information is readily at hand, even if the latest release is not currently installed in the production environment. Furthermore, this allows for flexibility in developing deployment plans (i.e., whether certain firmware/software is required to be updated, how an update affects other equipment, prioritization of updates, etc.).

BACKGROUND

Field of Invention

The present invention relates generally to electronic devices, andrelates more particularly to formatting and/or processing of releasenotes to facilitate intelligent management of electronic devices.

Description of the Related Art

Networking systems have become increasing more complicated. The addedcomplexity is a result of many factors. First, because of increasingdemands for bandwidth and features, networking systems are comprised ofincreasing more devices. Second, these devices are more complicated thantheir predecessors—performing more functions and more complicatedfunctions. As companies compete to differentiate and outdo theircompetition, new features are constantly being added. Fourth, managingnetwork systems is complex because a typical network system is anamalgam of devices from a number of different vendors—each with theirown operating systems, bug fixes, updates, and the like. Fifth, networksystems generally include numerous devices of different functional typesthat perform a wide range of functions, such as access, routing,switching, storage, security, etc. Thus, the types, severity, andfrequency of updates for such a heterogeneous group of devices can varywidely.

For deployments of network equipment, such as enterprise networks,information technology (IT) administrators routinely rely on networkmanagement systems (NMS) to help monitor, configure, and update firmwarefor equipment that is part of the network. As noted above, productionenvironments may include many different operating systems or firmwarebranches. Currently, each provider of firmware presents new features,fixes, and/or security issues in the form of release notes. Eachprovider's release notes are unique and are typically only provided inhard copy or online at the provider's website on a web page or in aportable document format (pdf) document.

Bug fixes, security patches, new features, and greater stability are fewof the reasons that can trigger an upgrade to one or more devices in anetwork system. Another common reason for updates is the addition of newequipment or accessories that require a new software/firmware release.IT administrators need to constantly evaluate these release notes todetermine whether an upgrade is warranted or even prudent.

Since network systems are often a collection of devices from a number ofdifferent providers, of a number of different types, or both, the burdenon network administrators can be quite taxing. First, the issue istaxing because there is no central repository for the release notes.Rather, network administrators have to go to a number of places to findrelease notes. And second, once the release notes are located, thenetwork administrator must then comb through the release notes lookingfor pertinent information.

Current network management systems have neither the ability to gatherrelease notes, nor to readily parse the information for entry into adatabase, nor do they have the ability to evaluate current status of anetwork and recommend a firmware level based on current or future needs.

Accordingly, what is needed are systems and methods that can addressthese deficiencies and limitations of managing updates for a system ofdevices.

BRIEF DESCRIPTION OF THE DRAWINGS

Reference will be made to embodiments of the invention, examples ofwhich may be illustrated in the accompanying figures, in which likeparts may be referred to by like or similar numerals. These figures areintended to be illustrative, not limiting. Although the invention isgenerally described in the context of these embodiments, it should beunderstood that it is not intended to limit the spirit and scope of theinvention to these particular embodiments. These drawings shall in noway limit any changes in form and detail that may be made to theinvention by one skilled in the art without departing from the spiritand scope of the invention.

FIG. 1 depicts an example of a system for using digitized release notesaccording to embodiments of the present invention.

FIG. 2 depicts a method for using digitized release notes according toembodiments of the present invention.

FIG. 3 depicts a method for using digitized release notes to installcomputer code according to embodiments of the present invention.

FIG. 4 depicts a method for using digitized release notes to installcomputer code according to embodiments of the present invention.

FIG. 5 depicts a method for using digitized release notes for managinginstallations of computer code according to embodiments of the presentinvention.

FIG. 6 depicts an example of a display from a datastore comprising aplurality of digital release notes according to embodiments of thepresent invention.

FIG. 7 depicts methodologies for using digitized release notes accordingto embodiments of the present invention.

FIG. 8 depicts a push-notification embodiment of a methodology for usingdigitized release notes according to embodiments of the presentinvention.

FIG. 9 depicts a pull embodiment of a methodology for using digitizedrelease notes according to embodiments of the present invention.

FIG. 10 depicts a block diagram of an exemplary computer systemaccording to embodiments of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

In the following description, for purposes of explanation, specificexamples and details are set forth in order to provide an understandingof the invention. It will be apparent, however, to one skilled in theart that the invention may be practiced without these details.Well-known process steps may not be described in detail in order toavoid unnecessarily obscuring the present invention. Other applicationsare possible, such that the following examples should not be taken aslimiting. Furthermore, one skilled in the art will recognize thataspects of the present invention, described herein, may be implementedin a variety of ways, including software, hardware, firmware, orcombinations thereof.

Components, or modules, shown in block diagrams are illustrative ofexemplary embodiments of the invention and are meant to avoid obscuringthe invention. It shall also be understood that throughout thisdiscussion that components may be described as separate functionalunits, which may comprise sub-units, but those skilled in the art willrecognize that various components, or portions thereof, may be dividedinto separate components or may be integrated together, includingintegrated within a single system or component. It should be noted thatfunctions or operations discussed herein may be implemented ascomponents or modules.

Furthermore, connections between components within the figures are notintended to be limited to direct connections. Rather, data between thesecomponents may be modified, re-formatted, or otherwise changed byintermediary components (which may or may not be shown in the figure).Also, additional or fewer connections may be used. It shall also benoted that the terms “coupled” or “communicatively coupled” shall beunderstood to include direct connections, indirect connections throughone or more intermediary devices, and wireless connections.

In the detailed description provided herein, references are made to theaccompanying figures, which form a part of the description and in whichare shown, by way of illustration, specific embodiments of the presentinvention. Although these embodiments are described in sufficient detailto enable one skilled in the art to practice the invention, it shall beunderstood that these examples are not limiting, such that otherembodiments may be used, and changes may be made without departing fromthe spirit and scope of the invention.

Reference in the specification to “one embodiment,” “preferredembodiment,” “an embodiment,” or “embodiments” means that a particularfeature, structure, characteristic, or function described in connectionwith the embodiment is included in at least one embodiment of theinvention and may be in more than one embodiment. Also, such phrases invarious places in the specification are not necessarily all referring tothe same embodiment or embodiments. It shall be noted that the use ofthe terms “set” and “group” in this patent document shall include anynumber of elements. Furthermore, it shall be noted that methods oralgorithms steps may not be limited to the specific order set forthherein; rather, one skilled in the art shall recognize, in someembodiments, that more or fewer steps may be performed, that certainsteps may optionally be performed, and that steps may be performed indifferent orders, including being done some steps being doneconcurrently.

The present invention relates in various embodiments to devices,systems, methods, and instructions stored on one or more non-transitorycomputer-readable media. Such devices, systems, methods, andinstructions stored on one or more non-transitory computer-readablemedia can result in better, more efficient, and more intelligent ways ofmonitoring, managing, and/or deploying updates to devices in a network.

It shall be noted that, for purposes of explanation, the presentinvention is explained in the context of network systems and firmware.It shall be noted that these examples are provided for purposes ofillustration and shall not be used to limit the present invention.Accordingly, the invention elements may be applied or adapted for use inother contexts. Thus, it shall be noted that aspects of the presentinvention may be applied to other applications and other computer code,including firmware and software (and regardless of whether an update ora full installation (initial installation or otherwise)).

1. Overview

Traditional management systems, such as (by way of example and notlimitation) network and system management systems (NMS), do not have theability to evaluate the current status of a network, or portionsthereof, and recommend a firmware level. One of the faults of currentimplementations of management systems is the lack of integration withrelease notes. The current patent document presents unique systems andmethods for formatting, storing, and/or using digitized release notes toassist in managing devices. By having release notes in a digitizedformat, the contents of the release notes may be readily consumed by orimported into a database or other system.

2. System Overview

Turning to FIG. 1, depicted is an example of a system for supportingdigitized release notes according to embodiments of the presentinvention. As shown in FIG. 1, one or more equipment vendors 105-x arecommunicatively coupled to a central repository 117 that may becommunicatively connected to a centralize network 115, such as theInternet.

One or more of the equipment vendors 105-x may format its release notes110 into a data file having a format such that the contents can bereadily imported into a database. In embodiments, the data file 110 mayuse existing formats and technology such as (by way of illustration andnot limitation) eXtensible Markup Language (XML) or JavaScript ObjectNotation (JSON). In embodiments, a centralized repository, such as byway of illustration and not limitation, a cloud-based update server(e.g., datastore 117) may be used for a device vendor or vendors tostore digitized release notes and the related code (e.g.,firmware/software), or links thereto. In embodiments, this data may beposted, accessed, or both at periodic intervals, according to customschedules, manual checks, or some combination thereof.

Also communicatively coupled to the central repository 117 is amanagement system 120. In the depicted embodiment of FIG. 1, themanagement system 120 is a network management system, but it shall benoted that other management systems for different purposes may be alsoused. The network management system 120 is communicatively coupled to anetwork 130 that comprises a plurality of devices (e.g., 135-1 and135-2), which are managed by the network management system 120. Thesedevices may be of the same type or different types and may from the sameor different vendors.

Via push notification, pull notification, other update mechanisms, or acombination thereof, the network management system 120 receives thedigitized release notes that are pertinent to its network. Thepertinences of the digitized release notes may be based upon one or morefactors including but not limited to: (1) correlation to devices undermanagement by the NMS; (2) prior history of requested or receiveddigitized release notes; and (3) a listing or notice to the centralrepository or release notes provider of one or more devices, vendors,features, and other criteria of interest. In embodiments, the networkmanagement system 120 may store the digitized release notes in adatabase 125 or datastore.

Because the details of release notes for devices are in a digitized fileformat, this information may be imported into or otherwise used by amanagement system (e.g., NMS 120). In embodiments, the data files may beused to generate a matrix of issues, features, and/or RFCs (Request forComments) to show an administrator in one or more views what eachrelease contains. In embodiments, a matrix displayed to the admin oruser may be demand generated from a database comprising the releasenotes information.

In embodiments, a database of release notes integrated with or into amanagement system (e.g., a Network Management System) can have severalbenefits, including, but not limited to the following. First, inembodiments, such a system can facilitate dynamic compliance of firmwareacross a network by leveraging the digitized release notes to identifysome or all of the related devices/components that are not compliantwith recommended firmware. In embodiments, non-compliance use cases mayinvolve confirming security vulnerabilities and ensuring firmwareupdates across networking and end-client devices.

Second, in embodiments, the management system may be configured withauto-notifications (e.g., alerts, traps, syslog messages, emails, etc.)of non-compliant devices by leveraging the contents of the digitizedrelease notes.

Third, firmware updates may be staged, new solutions may be rolled-out,or both by using contents of the digitized release notes and knowledgeof the configurations of one or more devices in a system.

Fourth, in embodiments, a system may register and leverage the centralrepository to which the latest firmware images and patches are pushed byone or more vendors. Upon a new update, a system may be configured toautomatically obtain a notification. And, because the digitized releasenotes are in a format that can be readily imported, a system mayautomatically, or with admin/user assistance, take one or more actionsto deploy one or more computer code images across the relevant devices.

Fifth, sales and support may use such a system to easily show-case newproducts and features, thus enabling new innovative solutions andopportunities. Sales and support personnel may also employ this newdesign to identify how certain parts of the existing customerdeployments are in need of upgrading based on the common sets offeatures and standards that admins and customers are looking for.

Sixth, support personnel may also send security advisories directly tothe customer through such a system. Commonly, a security patch comeswith its own release note. If the new release note information containssecurity-related information, a management system that receives releasenote data may be programmed to identify a security flag in the digitizedrelease notes and alert the admin.

Finally, it should be noted that, in embodiments, the digitized releasenote systems and methods may be utilized by a single vendor.Alternatively, given the flexibility of aspects of the systems andmethods presented herein, digitized release notes may be extended to anythird parties, such as OEM partners.

The foregoing benefits are provided by way of example only. One ofordinary skill in the art shall recognize that the present invention mayprovide other benefits as well.

3. Method Embodiments

FIG. 2 depicts a method for using digitized release notes according toembodiments of the present invention. In embodiments, a digitizedrelease note for computer code (such as, by way of example and notlimitation, new firmware) is put (205) into a data file (such as, by wayof example and not limitation, a XML-based data file). The digitalizedrelease notes may then be posted (210) to a cloud-based server or otheraccessible update server. A Management System (MS) downloads (215) thenew firmware release notes posting or postings. The release notes fileor files are processed (220) into the MS database. Because the releasenote files are in a digitized format, the release notes files can beeasily and correctly entered into the database. In embodiments, the MSmay be configured to alert (225) an administrator (e.g., through agraphical user interface (GUI), email alert, audio alert, text message,etc. or some combination thereof) after download. In embodiments, thedigitized release notes may include one or more fields for specificitems or flags that can be helpful for alerting or prioritizing updates.For example, in embodiments, new release notes may include one or morefields that identify security and/or time critical patches. Thus, inembodiments, when the management system receives the digitized release,parses the information, and imports it into a database, these fields canbe examined and appropriate alerts can be sent to help the administratorto prioritize upgrades. In embodiments, the fields and types ofinformation that may be included in alerts or used for triggering alertsmay be user selected. For example, in embodiments, a user may select toreceive priority alerts whenever a new release affects a certain featureor features or for any security-related updates.

By creating a database of release notes with contents that are enteredinto searchable or otherwise useable fields, the administrator may usethe release notes to take one of a number of different options relatedto the release notes. Consider, by way of illustration and notlimitations, the various options related to installing (230) computercode related to a release note presented in FIGS. 3-5.

FIG. 3 depicts a method for using digitized release notes to installcomputer code according to embodiments of the present invention. Asdepicted in FIG. 3, if an administrator desires to install code, such asa firmware/software update, related to a release note, in embodiments,text generated or otherwise obtained from the release notes allowsadministrator to review the pertinent information the release note. Inembodiments, the information may be presented to the administratorwithin a pop-up window in a GUI. In embodiments, the information, or alink to the pertinent information, may be presented or included in analert.

In embodiments, one or more user interfaces may be presented to theadministrator to give him/her an option to install (310) thesoftware/firmware. In embodiments, the option to install may bepresented after the administrator has reviewed the release notesinformation. Such a configuration is beneficial because if there arealerts or other important information, the administrator is made awareof this information before initiating the installation.

FIG. 4 depicts a method for using digitized release notes to installcomputer code according to embodiments of the present invention. Asdepicted in FIG. 4, one or more new release notes may cause anadministrator to want to investigate the release notes, including butnot limited to investigating their potential effects. Accordingly, inembodiments, the administrator may perform (405) one or more databasequeries regarding the release notes and/or about one or more devicesunder management. Because the contents of the release notes are in asearchable database, the queries allow (410) the administrator to lookat one or more features and/or bugs in updates and can help analyzedeployment. For example, if an update will result in the deprecation ordisablement of a feature and other devices in the network rely upon orinteract with that feature, the administrator may want to make otherchanges to the network or wait before installing the update. Thus, bydoing a search in the database for devices that include that feature,the administrator can more intelligently develop a deployment plan.Similarly, an administrator may discover via the database of releasenotes that the installation of an update for devices of type X requiresthat another set of devices of type Y be updated first—before the updateto the devices of type X is applied.

In embodiments, the management system may also include the ability toperform simulations of updates. Because the management system hascentralized access to all of the various release notes, simulationmodels may be generated and analyses may be performed to detectincompatibilities or other issues that previously could not beperformed.

Previous to the invention of the systems and methods presented herein,administrators could not perform such investigations and develop suchdeployment plans because the release notes were not in a centraldatabase nor were not readily searchable and usable. Combining thisfunctionality with centralized information related to the configurationstatuses of devices under management provides an administrator withpowerful tools to intelligently manage the devices.

FIG. 5 depicts a method for using digitized release notes for managinginstallations of computer code according to embodiments of the presentinvention. As depicted in FIG. 5, in embodiments, if an administratordecides he/she wants to investigate information related to a releasenote or notes, the management system allows the administrator one ormore choices to do so. For example, in embodiments, the managementsystem may present, via one or more interfaces, an administrator withthe choice to read release note at that time, set reminder to review therelease notes at a later time, turn off alert, run simulations, or acombination thereof.

In embodiments, in investigating a release note to determine adeployment plan, the management system can facilitate one or morequeries of the release notes. One skilled in the art shall recognizethat the content, format, and arrangement of the query results may bepresented in a wide variety of ways, including graphically, in text, incombinations of graphics and text, linked to provide additional data,etc. Consider, by way of illustration and not limitation, an exampledepiction of a database of digitized release notes according toembodiments of the present invention as presented in FIG. 6.

FIG. 6 depicts an example of a display from a datastore comprising aplurality of digital release notes according to embodiments of thepresent invention. As shown, the display includes a listing of thedevices 605 that the network management system manages. As previouslynoted, by using digitized release notes, the information can be easilyparsed and entered into fields in a database. These fields may includethe release version 610, release date 615, whether the release affectssecurity 620, features listing 625, bug lists 630, and text such as bugdescriptions 635 and other release note text 640.

In embodiments, the display 600 may include links that, when selected,present additional information to help an administrator when analyzing anetwork or developing a deployment plan. For example, in embodiments, byclicking on a device (e.g., “AB-123”) 645, a display of all of thedevices of that model in the network are presented. The presented datamay also include a graphical display of its logical position within thenetwork, what release version each device is currently running, or otherinformation. In yet another example, in embodiments, by clicking onfeature (e.g., “IEEE 802.1x” 650), a display of all devices in thenetwork that include or utilize that feature may be presented. Thepresented data may also include a graphical display of its logicalposition within the network, what release version each device iscurrently running, or other information. Such a display may also allowthe administrator to link to release notes for other devices thatoperate with that feature to determine compatibility/interoperabilityissues with updates. One skilled in the art shall recognize otherpresentations of data may be provided for assisting an administrator whois monitoring, analyzing, and/or developing deployment plans. It shallalso be noted that because the digitized release notes allow forimportation into a database, aspects of the present invention also cansupport custom searches and the generation of custom displays.

FIG. 7 depicts a device discovery methodology for using digitizedrelease notes according to embodiments of the present invention. In thedepicted embodiment, a management system discovers or identifies (705) adevice under its management. The discovered device is checked (710) toascertain the current configuration status, such as the current firmwareimage on the device. It shall be noted that, in embodiments, themanagement system may access the device to ascertain this information;or alternatively, this information may be contained with a database,which may be the same database that contains the release notes data.

In embodiments, the release notes repository may be checked (715) todetermine whether one or more new updates exist for the device relativeto its current configuration. If no update exists, no action need betaken (730).

If an update exists, the applicable digitized release note(s) may beparsed or otherwise examined (720) to determine whether the network iscompliant according to one or more recommendations of the release notes,one or more rules, one or more policies, or a combination thereof. Ifthe network is compliant (725), no additional action need be taken(730).

If the network is not compliant (725), the device, or a set of similardevices, may be updated according to the digitalized release note ornotes.

Turning now to FIG. 8, depicted is a push-notification embodiment of amethodology for using digitized release notes according to embodimentsof the present invention. As shown in the embodiment illustrated in FIG.8, a management system may receive (805) one or more notices of newfeatures, bug fixes, compatibility of the devices, etc. via one or moredigitized release notes that are consumable by the management system. Inembodiments, the notice may be received from the producer of the releasenotes or from a centralized repository to which release notes areposted.

Because the data is in a digitized format that can be used by themanagement system, the system, or the system with the aid of anadministrator, may ensure that the network is compliant (810) withconstraints (e.g., compatibility, security, policies, rules, etc.) inlight of the new release notes information. Determining compliance oridentifying what should be updated may be accomplished by generating(815) a difference representation of the images to be loaded onto one ormore devices in the network relative to the current configuration of theone or more devices. In embodiments, a difference representation may bebased upon data stored about a device or may be obtained by directlycomparing the update image to the current configuration image of thedevice.

Given the information of what device or devices are not compliant andwhat update or updates are required, the management system, or themanagement system and its administrator, may configure a deployment planto intelligently deploy (820) the image(s) to those devices according tothe deployment plan. Thus, in embodiments, only devices that need theupdate are sent the update. For example, some of the devices may alreadyhave the update. Rather than updating to all of the devices, which cancontribute to excess system bandwidth usage or increased systemdowntime, only those devices that require the update are updated. By wayof another example, updates for devices may be placed in a certain orderto minimize conflicts or other incompatibility issues or to load balanceusage or downtime.

FIG. 9 depicts a pull-notification embodiment of a methodology for usingdigitized release notes according to embodiments of the presentinvention. In embodiments, a management system may make a request of arepository to determine if new updates are available. If new updates arepresent at the repository, the management system may retrieve (905)digitized release notes. In embodiments, the management system may alsoretrieve the update computer code, which may be part of the releasenotes or may be separate. As stated before, the management systemimports (910) the digitized release notes into its system.

Having the release notes data in a form that it can utilize, themanagement system may use the data to generate alerts, identify one ormore devices in the network to be updated (915), and/or generate orexecute a deployment plan that involves the intelligent deployment (920)of the image(s) to those devices that require the update.

One skilled in the art shall recognized that whether configured in apush or pull configuration, the management system may use the releasenotes data according to any of the prior discussed methodologies.

4. Example Use Cases

Presented herein are some example use cases. These use cases are provideby way of illustration only and shall not be used to limit the scope ofthe present invention.

a. Example #1

Company D may partner with a networking company or companies to act asan OEM (Original Equipment Manufacturer) of their products. Company Dthen has a number of supported products with various releases andoperating systems—each with individual release notes for each of thevariants. The networking OEM partner of Company D may have its ownpriorities and roadmap for implementing new RFCs or features. Thus,there may be a common occurrence that the roadmaps do not align forCompany D's developed products that may be deployed in the samenetwork—features on the products may precede or lack featuresimplementation on other products that Company D sells. A customer,wanting a specific feature, may have to determine what part of itscurrent deployment supports a certain new feature or RFC. Currently, theway to determine if all equipment in the deployment is compatible is togo through each piece of equipment's specifications and release notes.This is usually done by brute force—by downloading each release note andreading through them manually.

With digitized release notes for network management system (NMS), thedetails for each of the network devices may be directly downloaded intothe NMS. Thus, the NMS may use the release note information in adatabase to recommend a firmware level or show a compatibility issue.Such a system may also support queries of various types, includingqueries related to current conditions or proposed conditions. Forexample, queries of the release notes may be in the form of proposed newequipment or feature additions to the deployment. In embodiments, toassist in the queries, the system may import release notes related toproposed equipment or upgrades. In embodiments, such release note may beidentified or segregated as belonging to equipment not currently in usein the system. Such queries allow the admin to see in real time whatoptions are available to him/her before a purchase or upgrade is made.

It should be noted that, in embodiments, one or more of the networkingOEM partner may configure their release notes according to a digitizedformat so that they work with Company D's release notes. In alternativeembodiments, Company D may take the traditional release notes of itsnetworking OEM partners and convert them into a digitized format.

b. Example #2

Consider a customer of Company D who wants to add a new Access Point(AP) to their existing wireless network. The customer currently has aproduction environment with firmware 5.1.3 installed. The new AccessPoint requires firmware 6.3.0 to be used. Since the NMS is able toimport the release note into the system, it has all the new features,bug lists, and requirements of the 6.3.0 firmware in its database.

The administrator may select from a field the AP model that he proposesto add to the network. From that action, it notifies the administratorthat 6.3.0 is required. At the same time, 6.3.0 features and bugs may bedisplayed in a matrix alongside other equipment and their features.Options in the query may also highlight features that are currently inuse or not in use and contain a bug or fix.

c. Example #3

Consider a customer of Company D who wants to add a new networkmanagement tool (such as, by way of example a ClearPass Policy Managerappliance) to his network, and this new appliance is desired to be thecontrolling center for all authentications. A key feature to allow forautomatic remediation for health-related posture checks requires aRADIUS CoA feature, RFC3576 on the access switches. The admin may querythe release notes database for RFC3576, and all the firmware releasessupporting that feature may be displayed according to the piece ofequipment currently on the network. The admin is able to see currentlyinstalled firmware and later releases. He is also able to see if someequipment does not yet have a firmware release that supports RFC3576.

One skilled in the art shall recognize other uses that fall with thescope of the present invention.

5. System Embodiments

It shall be noted that the present patent document is directed tocomputing systems, including but not limited to computers, networkmanagement appliances, and/or information handling systems. For purposesof this disclosure, an information handling system may include anyinstrumentality or aggregate of instrumentalities operable to compute,calculate, determine, classify, process, transmit, receive, retrieve,originate, switch, store, display, communicate, manifest, detect,record, reproduce, handle, or utilize any form of information,intelligence, or data for business, scientific, control, or otherpurposes. For example, an information handling system may be a personalcomputer (e.g., desktop or laptop), tablet computer, mobile device(e.g., personal digital assistant (PDA) or smart phone), server (e.g.,blade server or rack server), a network storage device, or any othersuitable device and may vary in size, shape, performance, functionality,and price. The information handling system may include random accessmemory (RAM), one or more processing resources such as a centralprocessing unit (CPU) or hardware or software control logic, ROM, and/orother types of nonvolatile memory. Additional components of theinformation handling system may include one or more disk drives, one ormore network ports for communicating with external devices as well asvarious input and output (I/O) devices, such as a keyboard, a mouse,touchscreen and/or a video display. The information handling system mayalso include one or more buses operable to transmit communicationsbetween the various hardware components.

FIG. 10 depicts a block diagram of an exemplary computing systemaccording to embodiments of the present invention. In embodiments, oneor more computing system may be configured to perform one or more of themethods, functions, and/or operations presented herein. Systems thatimplement at least one or more of the methods, functions, and/oroperations described herein may comprise an application or applicationsoperating on at least one computing system. The computing system maycomprise one or more computers and one or more databases. The computersystem may be a single system, a distributed system, a cloud-basedcomputer system, or a combination thereof.

It shall be noted that the present invention may be implemented in anyinstruction-execution/computing device or system capable of processingdata, including, without limitation phones, laptop computers, desktopcomputers, and servers. The present invention may also be implementedinto other computing devices and systems. Furthermore, aspects of thepresent invention may be implemented in a wide variety of ways includingsoftware (including firmware), hardware, or combinations thereof. Forexample, the functions to practice various aspects of the presentinvention may be performed by components that are implemented in a widevariety of ways including discrete logic components, one or moreapplication specific integrated circuits (ASICs), and/orprogram-controlled processors. It shall be noted that the manner inwhich these items are implemented is not critical to the presentinvention.

FIG. 10 depicts a functional block diagram of an embodiment of aninstruction-execution/computing device 1000 that may implement or embodyembodiments of the present invention. As illustrated in FIG. 10, aprocessor 1002 executes software instructions and interacts with othersystem components. In an embodiment, processor 1002 may be a generalpurpose processor such as (by way of example and not limitation) an AMDprocessor, an INTEL processor, a SUN MICROSYSTEMS processor, or aPOWERPC compatible-CPU, or the processor may be an application specificprocessor or processors. The processor or computing device may alsoinclude a graphics processor and/or a floating point coprocessor formathematical computations. In embodiments, a storage device 1004,coupled to processor 1002, provides long-term storage of data andsoftware programs. Storage device 1004 may be a hard disk drive and/oranother device capable of storing data, such as a magnetic or opticalmedia (e.g., diskettes, tapes, compact disk, DVD, and the like) drive ora solid-state memory device. Storage device 1004 may hold programs,instructions, and/or data for use with processor 1002. In an embodiment,programs or instructions stored on or loaded from storage device 1004may be loaded into memory 1006 and executed by processor 1002. In anembodiment, storage device 1004 holds programs or instructions forimplementing an operating system on processor 1002. In one embodiment,possible operating systems include, but are not limited to, UNIX, AIX,LINUX, Microsoft Windows, and the Apple MAC OS. In embodiments, theoperating system executes on, and controls the operation of, thecomputing system 1000.

An addressable memory 1006, coupled to processor 1002, may be used tostore data and software instructions to be executed by processor 1002.Memory 1006 may be, for example, firmware, read only memory (ROM), flashmemory, non-volatile random access memory (NVRAM), random access memory(RAM), or any combination thereof. In one embodiment, memory 1006 storesa number of software objects, otherwise known as services, utilities,components, or modules. One skilled in the art will also recognize thatstorage 1004 and memory 1006 may be the same items and function in bothcapacities. In an embodiment, one or more of the methods, functions, oroperations discussed herein may be implemented as modules stored inmemory 1004, 1006 and executed by processor 1002.

In an embodiment, computing system 1000 provides the ability tocommunicate with other devices, other networks, or both. Computingsystem 1000 may include one or more network interfaces or adapters 1012,1014 to communicatively couple computing system 1000 to other networksand devices. For example, computing system 1000 may include a networkinterface 1012, a communications port 1014, or both, each of which arecommunicatively coupled to processor 1002, and which may be used tocouple computing system 1000 to other computer systems, networks, anddevices.

In an embodiment, computing system 1000 may include one or more outputdevices 1008, coupled to processor 1002, to facilitate displayinggraphics and text. Output devices 1008 may include, but are not limitedto, a display, LCD screen, CRT monitor, printer, touch screen, or otherdevice for displaying information. Computing system 1000 may alsoinclude a graphics adapter (not shown) to assist in displayinginformation or images on output device 1008.

One or more input devices 1010, coupled to processor 1002, may be usedto facilitate user input. Input device 1010 may include, but are notlimited to, a pointing device, such as a mouse, trackball, or touchpad,and may also include a keyboard or keypad to input data or instructionsinto computing system 1000.

In an embodiment, computing system 1000 may receive input, whetherthrough communications port 1014, network interface 1012, stored data inmemory 1004/1006, or through an input device 1010, from (by way ofexample and not limitation) a scanner, copier, facsimile machine,server, computer, mobile computing device (such as, by way of exampleand not limitation a phone or tablet), or other computing device.

In embodiments, computing system 1000 may include one or more databases,some of which may store data used and/or generated by programs orapplications. In embodiments, one or more databases may be located onone or more storage devices 1004 resident within a computing system1000. In alternate embodiments, one or more databases may be remote(i.e., not local to the computing system 1000) and share a network 1016connection with the computing system 1000 via its network interface1014. In various embodiments, a database may be a database that isadapted to store, update, and retrieve data in response to commands.

In embodiments, all major system components may connect to a bus, whichmay represent more than one physical bus. However, various systemcomponents may or may not be in physical proximity to one another orconnected to the same bus. In addition, programs that implement variousaspects of this invention may be accessed from a remote location overone or more networks or may be conveyed through any of a variety ofmachine-readable medium.

One skilled in the art will recognize no computing system or programminglanguage is critical to the practice of the present invention. Oneskilled in the art will also recognize that a number of the elementsdescribed above may be physically and/or functionally separated intosub-modules or combined together.

It shall be noted that embodiments of the present invention may furtherrelate to computer products with a tangible computer-readable mediumthat have computer code thereon for performing variouscomputer-implemented operations. The media and computer code may bethose specially designed and constructed for the purposes of the presentinvention, or they may be of the kind known or available to those havingskill in the relevant arts. Examples of tangible computer-readable mediainclude, but are not limited to: magnetic media such as hard disks,floppy disks, and magnetic tape; optical media such as CD-ROMs andholographic devices; magneto-optical media; and hardware devices thatare specially configured to store or to store and execute program code,such as application specific integrated circuits (ASICs), programmablelogic devices (PLDs), flash memory devices, and ROM and RAM devices.Examples of computer code include machine code, such as produced by acompiler, and files containing higher level code that are executed by acomputer using an interpreter. Embodiments of the present invention maybe implemented in whole or in part as machine-executable instructionsthat may be in program modules that are executed by a processing device.Examples of program modules include libraries, programs, routines,objects, components, and data structures. In distributed computingenvironments, program modules may be physically located in settings thatare local, remote, or both.

It shall be noted that aspects of the present invention may be encodedupon one or more non-transitory computer-readable media withinstructions for one or more processors or processing units to causesteps to be performed. It shall be noted that the one or morenon-transitory computer-readable media shall include volatile andnon-volatile memory. It shall be noted that alternative implementationsare possible, including a hardware implementation or a software/hardwareimplementation. Hardware-implemented functions may be realized usingASIC(s), programmable arrays, digital signal processing circuitry, orthe like. Accordingly, the “means” terms in any claims are intended tocover both software and hardware implementations. Similarly, the term“computer-readable medium or media” as used herein includes softwareand/or hardware having a program of instructions embodied thereon, or acombination thereof. With these implementation alternatives in mind, itis to be understood that the figures and accompanying descriptionprovide the functional information one skilled in the art would requireto write program code (i.e., software) and/or to fabricate circuits(i.e., hardware) to perform the processing required.

While the inventions have been described in conjunction with severalspecific embodiments, it is evident to those skilled in the art thatmany further alternatives, modifications, application, and variationswill be apparent in light of the foregoing description. Thus, theinventions described herein are intended to embrace all suchalternatives, modifications, applications and variations as may fallwithin the spirit and scope of the appended claims.

What is claimed is:
 1. A method for using digitized release notes with anetwork management system, the method comprising: receiving a digitizedrelease note in a format comprising fields to facilitate inputting atleast some information from at least some of the fields of the digitizedrelease note into a database; importing at least some information fromat least some of the fields of the digitized release note intocorresponding fields in a database that is accessible by a networkmanagement system; and using the network management system to identifyone or more devices in a network managed by the network managementsystem that may be updated based upon comparing data from the databasecomprising contents of the digitized release note with data related tocurrent configurations of one or more devices in the network; and usingthe network management system and data from the database comprisescontents from digitized release notes to identify an expectedinteraction between a first set of devices in the network and a secondset of devices in the network, the expected interaction being anexpected result of updating at least one of the first or second sets ofdevices according to an update.
 2. The method of claim 1 wherein thestep of using the network management system to identify one or moredevices in a network managed by the network management system that maybe updated based upon comparing data from the database comprisingcontents of the digitized release note with data related to currentconfigurations of one or more devices in the network comprises:performing, via the network management system, one or more queries ofthe database to identify one or more updates to be applied to a set ofdevices in the network.
 3. The method of claim 1 wherein the step ofusing the network management system to identify one or more devices in anetwork managed by the network management system that may be updatedbased upon comparing data from the database comprising contents of thedigitized release note with data related to current configurations ofone or more devices in the network comprises: generating a differencerepresentation between images currently on one or more devices in thenetwork and an image to be loaded onto the one or more devices in thenetwork based upon data in the digitized release note.
 4. The method ofclaim 1 wherein the database comprises contents from a plurality ofdigitized release notes.
 5. The method of claim 4 further comprising thestep of: using, at least in part, the network management system and datafrom the database comprising contents from a plurality of digitizedrelease notes to formulate a deployment plan for deploying one or moreupdates to one or more devices in the network.
 6. The method of claim 5further comprising the step of: deploying one or more updates to one ormore devices in the network according to the deployment plan.
 7. Themethod of claim 1 wherein the digitized release note is receivedresponsive to a request sent from the network management system.
 8. Themethod of claim 1 wherein the digitized release note is receivedresponsive to a new updated being received at a centralized repositorythat is communicatively coupled to the network management system and thenew update is related to one or more devices managed by the networkmanagement system.
 9. The method of claim 1 further comprising: sendingan alert responsive to a trigger being identified in the digitizedrelease note.
 10. A method for facilitating the use of digitized releasenotes with a management system to manage computer code installations ondevices, the method comprising: formatting a release note for a deviceinto a digitized format comprising fields such that at least some of thecontents of the release note can be readily entered into correspondingfields in a database; and uploading the release note in the digitizedformat to a central repository that is accessible by one or moremanagement systems, wherein at least one of the one or more managementsystems facilitates use of data from the database comprises contentsfrom digitized release notes to identify an expected interaction betweena first set of devices in a network and a second set of devices in thenetwork, the expected interaction being an expected result of updatingat least one of the first or second sets of devices according to anupdate.
 11. The method of claim 10 wherein the release note in thedigitized format further comprises a computer code for installation on aspecified type of device.
 12. The method of claim 10 wherein the centralrepository of release notes pushes a notification to a management systemwhen a release note in a digitized format has been uploaded to thecentral repository.
 13. The method of claim 10 wherein the centralrepository of release notes provides an indication of one or more newrelease notes being added to the central repository responsive to arequest from a management system.
 14. The method of claim 10 wherein thedevice is a networking device.
 15. The method of claim 10 wherein therelease notes in digitized format are received from a plurality ofvendors of devices.
 16. A management system comprising: one or moreprocessors; and a non-transitory computer-readable medium or mediacomprising one or more sequences of instructions which, when executed bythe one or more processors, causes steps to be performed comprising:receiving a digitized release note in a format comprising fields forinput into a database; importing at least some of the contents of atleast some of the fields of the digitized release note intocorresponding fields in a database that is accessible by the managementsystem; and using the management system and data from the databasecomprises contents from digitized release notes to identify an expectedinteraction between a first set of devices in a network and a second setof devices in the network, the expected interaction being an expectedresult of updating at least one of the first or second sets of devicesaccording to an update.
 17. The management system of claim 16 furthercomprising: executing one or more queries of the database to identifycomputer code related to a digitized release note to be applied to adevice managed by the management system based upon comparing data fromthe database comprising contents of the digitized release note with datarelated to current configurations of one or more devices managed by themanagement system.
 18. The management system of claim 17 furthercomprising: providing one or more user interface displays to display toa user at least some release notes content related to the one or morequeries.
 19. The management system of claim 16 further comprising: usingdata from the database that comprises contents from a plurality ofdigitized release notes to formulate a deployment plan for deploying anupdate identified in digitized release note to one or more devicesmanaged by the management system.